#ifndef __FORMAT_DESCRIPTION_H__
#define __FORMAT_DESCRIPTION_H__

#include "texteditor_global.h"
#include "colorscheme.h"

#include <QtCore/QList>
#include <QtCore/QString>
#include <QtGui/qcolor.h>

namespace TextEditor {

class TEXTEDITOR_EXPORT FormatDescription
{
public:
	FormatDescription(const QString &id, const QString &displayName,
		const QColor &foreground = Qt::black);
	~FormatDescription() {}

	QString id() const
	{ return m_id; }

	QString displayName() const
	{ return m_displayName; }

	QColor foreground() const;
	QColor background() const;

	const Format &format() const { return m_format; }
	Format &format() { return m_format; }

private:
	QString m_id;               // Name of the category
	QString m_displayName;      // Displayed name of the category
	Format m_format;            // Default format
};

typedef QList<FormatDescription> FormatDescriptions;

}

#endif
